home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #5 & #6 / Amiga Plus CD - 1995 - No. 5 and 6.iso / tex / mf / inputs / cm / cmsa10.mf < prev    next >
Text File  |  1993-11-28  |  5KB  |  95 lines

  1. % Computer Modern SAIL extended ASCII characters for use with 10 point
  2. if unknown cmbase: input cmbase fi
  3.  
  4. font_identifier:="CMSA"; font_size 10pt#;
  5.  
  6. % This file created by JJW, December 1985.  Parameters are the same as
  7. % in CMTX10.MF, with the addition of character code changes at the end.
  8.  
  9. u#:=21/36pt#;      % unit width
  10. width_adj#:=0pt#;    % width adjustment for certain characters
  11. serif_fit#:=0pt#;    % extra sidebar near lowercase serifs
  12. cap_serif_fit#:=0pt#;    % extra sidebar near uppercase serifs
  13. letter_fit#:=0pt#;    % extra space added to all sidebars
  14.  
  15. body_height#:=250/36pt#;  % height of tallest characters
  16. asc_height#:=220/36pt#;    % height of lowercase ascenders
  17. cap_height#:=220/36pt#;    % height of caps
  18. fig_height#:=220/36pt#;    % height of numerals
  19. x_height#:=155/36pt#;    % height of lowercase without ascenders
  20. math_axis#:=110/36pt#;    % axis of symmetry for math symbols
  21. bar_height#:=79/36pt#;    % height of crossbar in lowercase e
  22. comma_depth#:=50/36pt#;    % depth of comma below baseline
  23. desc_depth#:=80/36pt#;    % depth of lowercase descenders
  24.  
  25. crisp#:=22/36pt#;    % diameter of serif corners
  26. tiny#:=22/36pt#;    % diameter of rounded corners
  27. fine#:=21/36pt#;    % diameter of sharply rounded corners
  28. thin_join#:=21/36pt#;    % width of extrafine details
  29. hair#:=25/36pt#;    % lowercase hairline breadth
  30. stem#:=25/36pt#;    % lowercase stem breadth
  31. curve#:=25/36pt#;    % lowercase curve breadth
  32. ess#:=22/36pt#;      % breadth in middle of lowercase s
  33. flare#:=32/36pt#;    % diameter of bulbs or breadth of terminals
  34. dot_size#:=36/36pt#;    % diameter of dots
  35. cap_hair#:=25/36pt#;    % uppercase hairline breadth
  36. cap_stem#:=25/36pt#;    % uppercase stem breadth
  37. cap_curve#:=25/36pt#;    % uppercase curve breadth
  38. cap_ess#:=25/36pt#;    % breadth in middle of uppercase s
  39. rule_thickness#:=25/36pt#;  % thickness of lines in math symbols
  40.  
  41. dish#:=0pt#;      % amount erased at top or bottom of serifs
  42. bracket#:=0pt#;      % vertical distance from serif base to tangent
  43. jut#:=34/36pt#;      % protrusion of lowercase serifs
  44. cap_jut#:=34/36pt#;    % protrusion of uppercase serifs
  45. beak_jut#:=0pt#;    % horizontal protrusion of beak serifs
  46. beak#:=34/36pt#;    % vertical protrusion of beak serifs
  47. vair#:=22/36pt#;    % vertical diameter of hairlines
  48. notch_cut#:=25/36pt#;    % maximum breadth above or below notches
  49. bar#:=22/36pt#;      % lowercase bar thickness
  50. slab#:=22/36pt#;    % serif and arm thickness
  51. cap_bar#:=22/36pt#;    % uppercase bar thickness
  52. cap_band#:=22/36pt#;    % uppercase thickness above/below lobes
  53. cap_notch_cut#:=25/36pt#;  % max breadth above/below uppercase notches
  54. serif_drop#:=0pt#;    % vertical drop of sloped serifs
  55. stem_corr#:=0pt#;    % for small refinements of stem breadth
  56. vair_corr#:=0pt#;    % for small refinements of hairline height
  57. apex_corr#:=10/36pt#;    % extra width at diagonal junctions
  58.  
  59. o#:=4/36pt#;      % amount of overshoot for curves
  60. apex_o#:=3/36pt#;    % amount of overshoot for diagonal junctions
  61.  
  62. slant:=.25;      % tilt ratio $(\Delta x/\Delta y)$
  63. fudge:=0.81;      % factor applied to weights of heavy characters
  64. math_spread:=-1;    % extra openness of math symbols
  65. superness:=1/sqrt2;    % parameter for superellipses
  66. superpull:=0;      % extra openness inside bowls
  67. beak_darkness:=0;    % fraction of triangle inside beak serifs
  68. ligs:=0;      % level of ligatures to be included
  69.  
  70. square_dots:=false;    % should dots be square?
  71. hefty:=true;      % should we try hard not to be overweight?
  72. serifs:=true;      % should serifs and bulbs be attached?
  73. monospace:=true;    % should all characters have the same width?
  74. variant_g:=false;    % should an italic-style g be used?
  75. low_asterisk:=true;    % should the asterisk be centered at the axis?
  76. math_fitting:=false;    % should math-mode spacing be used?
  77.  
  78. extra_beginchar:=extra_beginchar & "codeswap;";
  79. def codeswap =
  80.  if charcode=11: charcode:=94;      % up-arrow
  81.  elseif charcode=24: charcode:=95;    % left-arrow
  82.  elseif charcode=26: charcode:=27;    % not-equals
  83.  elseif charcode=27: charcode:=125;    % diamond
  84.  elseif charcode=94: charcode:=127;    % circumflex
  85.  elseif charcode=95: charcode:=24;    % underscore
  86.  elseif charcode=125: charcode:=126;    % right-brace
  87.  elseif charcode=126: charcode:=26;       % tilde
  88.  elseif charcode=127: charcode:=11; fi enddef;  % integral
  89.  
  90. % Integral is put in position 11 because it's what DDs type out for that
  91. % character.  Circumflex is in position 127, where it will probably never
  92. % be used.
  93.  
  94. generate texset      % switch to the driver file
  95.